//Admin verbs
// For a look as to what it does check the descriptions, I should add them after
// all this commenting

// As a side note I prefer that we give as little power as possible to
// the admins. I dont think that we have any people that are just in the admin class so far because
// we dont know who plays, or there playing schedule. I say (Like the forum mods) we wait
// till the full server is up.

mob/admin/semi/verb // for the semi admins in the world

	Announce(t as text, n as num)
		set category = "Admin"
		world << "<center><font color = #22bb22>####################<br></font><b>Announcment by [src]<BR>[t]<br><font color = #22bb22>####################<br>"

	Boot(mob/M in world)
		set category = "Admin"
		if(M.tag == "NoBoot")
			admin << "\red[src] tried to boot [M]"
			admin << "\red[src] was booted by [M]"
			src << "\red[M] booted you"
			del(src)
		else
			if(!developers.Find(M.ckey) && !adminslist.Find(M.ckey))
				admin << "\red[M] was booted by [src]"
				if(M.client)
					M << "\red[src] booted you"
				Listofactions += "[src] booted [M]"
				del(M)

			else
				src << "Sorry, Developers and Administrators that are hard-coded into the game are un-bootable."
				admin << "\red[src] tried to boot [M]!"


	Change_name(mob/M in world)
		set category = "Admin"
		var/newname = input("New name")as text
		var/oldname = M.name
		if(!newname)return
		if((developers.Find(M.ckey) && !developers.Find(ckey)) || (adminslist.Find(M.ckey) && !adminslist.Find(ckey) || !developers.Find(ckey)))
			src << "\red You do not have the authority to change the name of this player."
			return 0
		admin << "\red[src] has changed [oldname]'s name to [newname]"
		M << "\red[src] has changed your name to [newname]"
		Listofactions += "[src] changed [M.ckey]'s name from [oldname] to [newname]"
		M.name = newname


	ChangeWelcome(T as message)
		set category = "Admin"
		if(T)
			worldwelcome = T
			admin << "\red [src] changed the welcome message to [T]"
			Listofactions += "[src] changed the welcome message"
		else
			return

	Freeze(mob/M in world)
		set category = "Admin"
		if(M.Locked)
			admin << "\red[M] was unfrozen by [src]"
			M << "You have been unfrozen by an admin."
			M.Locked = 0
			Listofactions += "[src] froze [M]"
		else
			M.Locked = 1
			admin << "\red[M] was frozen by [src]"
			M << "You have been frozen by an admin."
			Listofactions += "[src] unfroze [M]"

	Mute(mob/pc/M in world)
		set category = "Admin"
		if(M.Muted)
			M.Muted = 0
			admin << "\red[M] was unmuted by [src]"
			M << "[src] unmuted you"
			Listofactions += "[src] unmuted [M]"
		else
			M.Muted = 1
			admin << "\red[M] was muted by [src]"
			M << "[src] muted you"
			Listofactions += "[src] muted [M]"

	Toggle_statpanels()
		set category = "Admin"
		showhiddenmenu = !showhiddenmenu

	World_Status(msg as text)
		set category = "Admin"
		world.status = msg
		admin << "\red [src] set the world's status message to: [msg]"
		Listofactions += "[src] changed the world message"

	League()

		var/Layout = "Keep track of RPS games <BR><BR>"
		Layout+= {"</HEAD><BODY LANG="en-US" DIR="LTR"><TABLE WIDTH=479 BORDER=1 CELLPADDING=4 CELLSPACING=3 STYLE="page-break-before: always">
	<COL WIDTH=179>
	<COL WIDTH=96>
	<COL WIDTH=56>
	<COL WIDTH=44>
	<COL WIDTH=44>
	<THEAD>
		<TR VALIGN=TOP>
			<TH WIDTH=179>
				<P>Name</P>
			</TH>
			<TH WIDTH=96>
				<P>games</P>
			</TH>
			<TH WIDTH=56>
				<P>w</P>
			</TH>
			<TH WIDTH=44>
				<P>l</P>
			</TH>
			<TH WIDTH=44>
				<P>d</P>
			</TH>
		</TR>
	</THEAD>
	<TBODY> "}
		for (var/mob/M)
			if(!M.RPS_games) break
			Layout += {"

			<TR VALIGN=TOP>
				<TD WIDTH=179>
					<P> [M.name]</P>
				</TD>
				<TD WIDTH=96>
					<P>[M.RPS_games]</P>
				</TD>
				<TD WIDTH=56>
					<P>[M.RPS_wins]</P>
				</TD>
				<TD WIDTH=44>
					<P>[M.RPS_loses]</P>
				</TD>
				<TD WIDTH=44>
					<P>[M.RPS_games - M.RPS_wins - M.RPS_loses]</P>
				</TD>
			</TR>
		"}

		Layout += "</TBODY></TABLE>"

		src << browse(Layout)